<template>
  <div>
    <p class="warn-content">
      Yaml编辑器 基于
      <a
        href="https://github.com/codemirror/CodeMirror"
        target="_blank"
      >CodeMirror</a>，
      主题预览地址 <a
        href="https://codemirror.net/demo/theme.html#idea"
        target="_blank"
      >Theme</a>
    </p>
    <Yaml
      :value="value"
      :height="height"
    />
  </div>
</template>

<script>
import Yaml from "@/components/YamlEdit/index";
export default {
  name: "YamlEdit",
  components: { Yaml },
  data() {
    return {
      height: document.documentElement.clientHeight - 210 + "px",
      value:
        "# 展示数据，如需更换主题，请在src/components/YamlEdit 目录中搜索原主题名称进行替换\n" +
        "\n" +
        "# ===================================================================\n" +
        "# Spring Boot configuration.\n" +
        "#\n" +
        "# This configuration will be overridden by the Spring profile you use,\n" +
        '# for example application-dev.yml if you use the "dev" profile.\n' +
        "#\n" +
        "# More information on profiles: https://www.jhipster.tech/profiles/\n" +
        "# More information on configuration properties: https://www.jhipster.tech/common-application-properties/\n" +
        "# ===================================================================\n" +
        "\n" +
        "# ===================================================================\n" +
        "# Standard Spring Boot properties.\n" +
        "# Full reference is available at:\n" +
        "# http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html\n" +
        "# ===================================================================\n" +
        "\n" +
        "eureka:\n" +
        "    client:\n" +
        "        enabled: true\n" +
        "        healthcheck:\n" +
        "            enabled: true\n" +
        "        fetch-registry: true\n" +
        "        register-with-eureka: true\n" +
        "        instance-info-replication-interval-seconds: 10\n" +
        "        registry-fetch-interval-seconds: 10\n" +
        "    instance:\n" +
        "        appname: product\n" +
        "        instanceId: product:${spring.application.instance-id:${random.value}}\n" +
        "        #instanceId: 127.0.0.1:9080\n" +
        "        lease-renewal-interval-in-seconds: 5\n" +
        "        lease-expiration-duration-in-seconds: 10\n" +
        "        status-page-url-path: ${management.endpoints.web.base-path}/info\n" +
        "        health-check-url-path: ${management.endpoints.web.base-path}/health\n" +
        "        metadata-map:\n" +
        "            zone: primary # This is needed for the load balancer\n" +
        "            profile: ${spring.profiles.active}\n" +
        "            version: ${info.project.version:}\n" +
        "            git-version: ${git.commit.id.describe:}\n" +
        "            git-commit: ${git.commit.id.abbrev:}\n" +
        "            git-branch: ${git.branch:}\n" +
        "ribbon:\n" +
        "    ReadTimeout: 120000\n" +
        "    ConnectTimeout: 300000\n" +
        "    eureka:\n" +
        "        enabled: true\n" +
        "zuul:\n" +
        "  host:\n" +
        "    connect-timeout-millis: 5000\n" +
        "    max-per-route-connections: 10000\n" +
        "    max-total-connections: 5000\n" +
        "    socket-timeout-millis: 60000\n" +
        "  semaphore:\n" +
        "    max-semaphores: 500\n" +
        "\n" +
        "feign:\n" +
        "    hystrix:\n" +
        "        enabled: true\n" +
        "    client:\n" +
        "        config:\n" +
        "            default:\n" +
        "                connectTimeout: 500000\n" +
        "                readTimeout: 500000\n" +
        "\n" +
        "# See https://github.com/Netflix/Hystrix/wiki/Configuration\n" +
        "hystrix:\n" +
        "    command:\n" +
        "        default:\n" +
        "            circuitBreaker:\n" +
        "                sleepWindowInMilliseconds: 100000\n" +
        "                forceClosed: true\n" +
        "            execution:\n" +
        "                isolation:\n" +
        "#                    strategy: SEMAPHORE\n" +
        "# See https://github.com/spring-cloud/spring-cloud-netflix/issues/1330\n" +
        "                    thread:\n" +
        "                        timeoutInMilliseconds: 60000\n" +
        "    shareSecurityContext: true\n" +
        "\n" +
        "management:\n" +
        "    endpoints:\n" +
        "        web:\n" +
        "            base-path: /management\n" +
        "            exposure:\n" +
        '                include: ["configprops", "env", "health", "info", "threaddump"]\n' +
        "    endpoint:\n" +
        "        health:\n" +
        "            show-details: when_authorized\n" +
        "    info:\n" +
        "        git:\n" +
        "            mode: full\n" +
        "    health:\n" +
        "        mail:\n" +
        "            enabled: false # When using the MailService, configure an SMTP server and set this to true\n" +
        "    metrics:\n" +
        "        enabled: false # http://micrometer.io/ is disabled by default, as we use http://metrics.dropwizard.io/ instead\n" +
        "\n" +
        "spring:\n" +
        "    application:\n" +
        "        name: product\n" +
        "    jpa:\n" +
        "        open-in-view: false\n" +
        "        hibernate:\n" +
        "            ddl-auto: update\n" +
        "            naming:\n" +
        "                physical-strategy: org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy\n" +
        "                implicit-strategy: org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy\n" +
        "    messages:\n" +
        "        basename: i18n/messages\n" +
        "    mvc:\n" +
        "        favicon:\n" +
        "            enabled: false\n" +
        "    thymeleaf:\n" +
        "        mode: HTML\n" +
        "security:\n" +
        "    oauth2:\n" +
        "        resource:\n" +
        "            filter-order: 3\n" +
        "\n" +
        "server:\n" +
        "    servlet:\n" +
        "        session:\n" +
        "            cookie:\n" +
        "                http-only: true\n" +
        "\n" +
        "# Properties to be exposed on the /info management endpoint\n" +
        "info:\n" +
        "    # Comma separated list of profiles that will trigger the ribbon to show\n" +
        '    display-ribbon-on-profiles: "dev"\n' +
        "\n" +
        "# ===================================================================\n" +
        "# JHipster specific properties\n" +
        "#\n" +
        "# Full reference is available at: https://www.jhipster.tech/common-application-properties/\n" +
        "# ===================================================================\n" +
        "\n" +
        "jhipster:\n" +
        "    async:\n" +
        "        core-pool-size: 2\n" +
        "        max-pool-size: 50\n" +
        "        queue-capacity: 10000\n" +
        "    # By default CORS is disabled. Uncomment to enable.\n" +
        "    #cors:\n" +
        '        #allowed-origins: "*"\n' +
        '        #allowed-methods: "*"\n' +
        '        #allowed-headers: "*"\n' +
        '        #exposed-headers: "Authorization,Link,X-Total-Count"\n' +
        "        #allow-credentials: true\n" +
        "        #max-age: 1800\n" +
        "    mail:\n" +
        "        from: product@localhost\n" +
        "    swagger:\n" +
        "        default-include-pattern: /api/.*\n" +
        "        title: product API\n" +
        "        description: product API documentation\n" +
        "        version: 0.0.1\n" +
        "        terms-of-service-url:\n" +
        "        contact-name:\n" +
        "        contact-url:\n" +
        "        contact-email:\n" +
        "        license:\n" +
        "        license-url:\n" +
        "\n" +
        "# ===================================================================\n" +
        "# Application specific properties\n" +
        "# Add your own application properties here, see the ApplicationProperties class\n" +
        "# to have type-safe configuration, like in the JHipsterProperties above\n" +
        "#\n" +
        "# More documentation is available at:\n" +
        "# https://www.jhipster.tech/common-application-properties/\n" +
        "# ===================================================================\n" +
        "\n" +
        "# application:\n",
    };
  },
  mounted() {
    const that = this;
    window.onresize = function temp() {
      that.height = document.documentElement.clientHeight - 210 + "px";
    };
  },
};
</script>

<style scoped>
</style>
